package com.hhh.corejava.code06_数组;

/**
 * @autor 黄焕晖
 * @date 2025年10月24日18:58
 **/
public class Test01_数组的定义方式 {
    public static void main(String[] args) {
//        Test01();
        Test04();
    }

    public static void Test01(){
        //定义方式一：数组类型[] 变量名 = new 数组类型[数组长度]
        //数组长度：表示数组中的元素个数
        //定义方式二：数据类型 变量名[] = new 数组类型[数组长度]
        int[] nums =new int[5];
        String hobbies[] =new String[3];
        //在数组中，可以通过变量名[下标]去访问对应的元素
        //数组的元素是有顺序的，按顺序进行存储
        //第一个下标从0开始，后面的下标依次自增1
        //在数组中，当定义了数组后，如果没有对数组进行元素赋值
        //则会根据元素的类型自动设置默认值
        //整型默认值为0，
        //小数型默认值为0.0，
        //字符串型默认值为null
        System.out.println(nums[0]);
        System.out.println(hobbies[0]);
        double[] ds=new double[3];
        System.out.println(ds[0]);
        boolean[] bs=new boolean[2];
        System.out.println(bs[0]);
        char[] cs=new char[4];
        System.out.println(cs[0]);
    }
    public static void Test02(){
        int[] nums =new int[3];
        //对数组进行元素赋值
        nums[0]=100;
        nums[1]=200;
        nums[2]=300;
        //下标最大为长度-1
        System.out.println(nums[0]);
        System.out.println(nums[1]);
        System.out.println(nums[2]);
        //当下标的值超出数组的长度范围时，会报错
        //ArrayIndexOutOfBoundsException数组下标越界异常
        nums[3]=3;
        System.out.println(nums[3]);
    }
    public static void Test03(){
        //定义方式三：数组类型[] 变量名 = new 数组类型[]{元素1,元素2,元素3...}
        int[] nums =new int[]{100,200,300,400,500};
        System.out.println(nums[0]);
        System.out.println(nums[1]);
        System.out.println(nums[2]);
        System.out.println(nums[3]);
        System.out.println(nums[4]);
        System.out.println(nums[5]);
    }

    public static void Test04(){
        String[] hobbies={"旅游","运动","游戏"};
        System.out.println(hobbies[0]);
        System.out.println(hobbies[1]);
        System.out.println(hobbies[2]);
    }
}
